MaskableGraphic GC 优化
最近想把 UGUI
整个从 Unity
中剔除,然后 修改 UGUI 源码
在对比 2018
和 2020
版本中 MaskableGraphic.cs
时,发现两个版本源码并不一致
2018 版本
注意红框标记的部分,我们每次打开继承 MaskableGraphic.cs
的组件时,都会产生数量非常可观的 GC
2020 版本
在 2020
版本的源码中,Unity
移除了这个沙雕代码,哈哈哈哈哈
我们接着往下看,看看这次 Unity
是怎么实现的,如果还有奇怪的代码就给他改掉
2018
版本中判断当前组件是否为Mask
的逻辑被移到了Mask.cs
文件中,这次Unity
学聪明了,直接使用is
这样就会产生奇怪的GC
了